home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2002 June / INTERNET92.ISO / pc / software / windows / utils / mysql_studio / winstudio_setup.exe / {app} / myodbc / readme < prev    next >
Encoding:
Text File  |  2002-01-31  |  14.1 KB  |  326 lines

  1.         ************************************
  2.         *       MyODBC Release Notes       *
  3.         *         Version 02.50.38         *    
  4.         *      Updated : 19 July 2001      *
  5.         ************************************
  6.         
  7. ======================================================
  8. CONTENTS
  9. ======================================================
  10. 1. What is MyODBC ?
  11. 2. MyODBC New Fatures in 02.50.38
  12. 3. MyODBC Bugs Fixes in 02.50.38
  13. 4. MyODBC Supported Features
  14. 5. MyODBC Open Issues
  15. 6. Applications working with MyODBC
  16. 7. Reporting problems with MyODBC
  17.  
  18. ======================================================
  19. 1. WHAT IS MYODBC ?
  20. ======================================================
  21.  
  22. MySQL, the most popular Open Source SQL database, is provided by MySQL AB.
  23. MySQL AB is a commercial company that builds its business providing services
  24. around the MySQL database.
  25.  
  26. MySQL provides support for ODBC by means of the MyODBC program. For more
  27. information about MyODBC, please visit the following link:
  28. http://www.mysql.com/documentation/mysql/bychapter/manual_ODBC.html#ODBC
  29.  
  30. ======================================================
  31. 2. MYODBC NEW FEATURES IN 02.50.38
  32. ======================================================
  33.  
  34. The following features or APIs are newly supported in this release:
  35.  
  36. -- SQLSetCursorName
  37. -- SQLGetCusrorName
  38. -- SQLSetPos
  39. -- positioned update/delete operations
  40.  
  41. SQLSetCursorName and SQLGetCursorName
  42. -------------------------------------
  43. Now, MyODBC applications can make use of cursors in manipulating the 
  44. result set data using the cursors. This can be accomplished with the
  45. use of SQLSetCursorName and SQLGetCursorName ODBC APIs, to set and get
  46. the cursors with the appropriate statement handles respectivly.
  47.  
  48. SQLSetPos
  49. ---------
  50. SQLSetPos, yes you are correct, one of the magic/wonderful API from ODBC, is
  51. now supported by MyODBC driver. Using this MyODBC applications can delete or
  52. update the desired row of data in the result set, while result set is 
  53. processed.The following options are supported in SQLSetPos.
  54.  
  55. SQL_POSITION
  56. SQL_DELETE
  57. SQL_UPDATE and
  58. SQL_REFRESH.
  59.  
  60. Positioned update or delete operations
  61. --------------------------------------
  62. Now, MyODBC applications can delete/update the desired row in the
  63. result set, using the cursors.  Now using WHERE CURRENT OF cursor_name,
  64. application can delete / update the current row that is in the process.
  65.  
  66. SYNTAX:
  67.  
  68. DELETE FROM table_name WHERE CURRENT OF cursor_name;
  69. UPDATE table_name SET col_list WHERE CURRENT OF cursor_name;
  70.  
  71. NOTE: For the usage of SQLSetPos and Positioned delete/update operations,
  72. please refer to ODBC manual from MSDASDK which is available from the
  73. followimg link: 
  74.  
  75. http://www.microsoft.com/data
  76.  
  77. ======================================================
  78. 3. MYODBC BUG FIXES IN 02.50.38
  79. ======================================================
  80.  
  81. 1. Execution of row bindings prior to setting the complete param bindings.
  82. Previously driver use to through the error when the application calls
  83. SQLBindCol to set the row buffers, prior to setting any pending param
  84. bindings. This is not supposed to be validated by the driver till the 
  85. execution of the statement. This is fixed in the release
  86.  
  87. 2. Fix to export of table with one of the column type as TEXT from 
  88. MS Access98/2000 to MySQL.
  89.  
  90. ======================================================
  91. 4. MYODBC SUPPORTED or UN-SUPPORTED FEATURES
  92. ======================================================
  93.  
  94. [Functions]                 [Supported]    [Level]
  95. SQLAllocConnect()           Supported       Core
  96. SQLAllocEnv()               Supported       Core
  97. SQLAllocStmt()              Supported       Core
  98. SQLBindCol()                Supported       Core
  99. SQLCancel()                 Supported       Core
  100. SQLColAttribute()           Supported       Core
  101. SQLColumns()                Supported       Level 1
  102. SQLConnect()                Supported       Core
  103. SQLDataSources()            Supported       Level 2
  104. SQLDescribeCol()            Supported       Core
  105. SQLDisconnect()             Supported       Core
  106. SQLError()                  Supported       Core
  107. SQLExecDirect()             Supported       Core
  108. SQLExecute()                Supported       Core
  109. SQLFetch()                  Supported       Core
  110. SQLFreeConnect()            Supported       Core
  111. SQLFreeEnv()                Supported       Core
  112. SQLFreeStmt()               Supported       Core
  113. SQLGetConnnectOptions()     Supported       Level 1
  114. SQLGetCursorName()          Supported       Core
  115. SQLGetData()                Supported       Level 1
  116. SQLGetFunctions()           Supported       Level 1
  117. SQLGetInfo()                Supported       Level 1
  118. SQLGetStmtOption()          Supported       Level 1
  119. SQLGetTypeInfo()            Supported       Level 1
  120. SQLNumResultCols()          Supported       Core
  121. SQLParamData()              Supported       Level 1
  122. SQLPrepare()                Supported       Core
  123. SQLPutData()                Supported       Level 1
  124. SQLRowCount()               Supported       Core
  125. SQLSetConnectOption()       Supported       Level 1
  126. SQLSetCursorName()          Supported       Core
  127. SQLSetParam()               Supported       Core
  128. SQLSetStmtOption()          Supported       Level 1
  129. SQLSpecialColumns()         Supported       Level 1
  130. SQLStatistics()             Supported       Level 1
  131. SQLTables()                 Supported       Level 1
  132. SQLTransact()               Supported       Core
  133. SQLBindParameter()          Supported       Level 1
  134. SQLBrowseConnect()          Unsupported     Level 2
  135. SQLColumnPrivileges()       Unsupported     Level 2
  136. SQLDescribeParam()          Supported       Level 2
  137. SQLDriverConnect()          Supported       Level 1
  138. SQLDrivers()                Supported       Level 2
  139. SQLExtendedFetch()          Supported       Level 2
  140. SQLForeignKeys()            Supported       Level 2
  141. SQLMoreResults()            Supported       Level 2
  142. SQLNativeSQL()              Supported       Level 2
  143. SQLNumParams()              Supported       Level 2
  144. SQLParamOptions()           Unsupported     Level 2
  145. SQLPrimaryKeys()            Supported       Level 2
  146. SQLProcedureColumns()       Unsupported     Level 2
  147. SQLProcedures()             Unsupported     Level 2
  148. SQLSetPos()                 Supported       Level 2
  149. SQLSetScrollOptions()       Supported       Level 2
  150. SQLTablePrivileges()        Unsupported     Level 2
  151.  
  152. [Driver Info]
  153. SQL_ACTIVE_CONNECTIONS      SQL_SUCCESS     Core
  154. SQL_ACTIVE_STATEMENTS       SQL_SUCCESS     Core
  155. SQL_CONVERT_FUNCTIONS       SQL_SUCCESS     Core
  156. SQL_DATABASE_NAME           SQL_SUCCESS     Core
  157. SQL_DBMS_NAME               SQL_SUCCESS     Core
  158. SQL_DBMS_VER                SQL_SUCCESS     Core
  159. SQL_DATA_SOURCE_NAME        SQL_SUCCESS     Core
  160. SQL_DRIVER_NAME             SQL_SUCCESS     Core
  161. SQL_DRIVER_ODBC_VER         SQL_SUCCESS     Core
  162. SQL_DRIVER_VER              SQL_SUCCESS     Core
  163. SQL_FETCH_DIRECTION         SQL_SUCCESS     Core
  164. SQL_FILE_USAGE              SQL_SUCCESS     Core
  165. SQL_GETDATA_EXTENSIONS      SQL_SUCCESS     Core
  166. SQL_LOCK_TYPES              SQL_ERROR       Core
  167. SQL_NUMERIC_FUNCTIONS       SQL_SUCCESS     Core
  168. SQL_ODBC_API_CONFORMANCE    SQL_SUCCESS     Core
  169. SQL_ODBC_SAG_CLI_CONFORMANCE    SQL_SUCCESS Core
  170. SQL_ODBC_VER                SQL_SUCCESS     Core
  171. SQL_POS_OPERATIONS          SQL_SUCCESS     Core
  172. SQL_POSITIONED_STATEMENTS   SQL_SUCCESS     Core
  173. SQL_ROW_UPDATES             SQL_SUCCESS     Core
  174. SQL_SEARCH_PATTERN_ESCAPE   SQL_SUCCESS     Core
  175.  
  176. [DataSource Info]
  177. SQL_ACCESSIBLE_PROCEDURES   SQL_SUCCESS     Core
  178. SQL_ACCESSIBLE_TABLES       SQL_SUCCESS     Core
  179. SQL_BOOKMARK_PERSISTENCE    SQL_SUCCESS     Core
  180. SQL_CURSOR_COMMIT_BEHAVIOR  SQL_SUCCESS     Core
  181. SQL_CURSOR_ROLLBACK_BEHAVIOR    SQL_SUCCESS Core
  182. SQL_DATA_SOURCE_READ_ONLY   SQL_SUCCESS     Core
  183. SQL_DEFAULT_TXN_ISOLATION   SQL_SUCCESS     Core
  184. SQL_MULT_RESULT_SETS        SQL_SUCCESS     Level 2
  185. SQL_MULTIPLE_ACTIVE_TXN     SQL_SUCCESS     Core
  186. SQL_NEED_LONG_DATA_LEN      SQL_SUCCESS     Level 1
  187. SQL_NULL_COLLATION          SQL_SUCCESS     Core
  188. SQL_OWNER_TERM              SQL_SUCCESS     Core
  189. SQL_OWNER_USAGE             SQL_SUCCESS     Core
  190. SQL_PROCEDURE_TERM          SQL_SUCCESS     Core
  191. SQL_QUALIFIER_TERM          SQL_SUCCESS     Core
  192. SQL_SCROLL_CONCURRENCY      SQL_SUCCESS     Core
  193. SQL_SCROLL_OPTIONS          SQL_SUCCESS     Core
  194. SQL_STATIC_SENSITIVITY      SQL_SUCCESS     Core
  195. SQL_TABLE_TERM              SQL_SUCCESS     Core
  196. SQL_TIMEDATE_ADD_INTERVALS  SQL_SUCCESS     Core
  197. SQL_TIMEDATE_DIFF_INTERVALS SQL_SUCCESS     Core
  198.  
  199. [Connection Attr]
  200. SQL_ACCESS_MODE             SQL_SUCCESS     Core
  201. SQL_AUTOCOMMIT              SQL_SUCCESS     Core
  202. SQL_CURRENT_QUALIFIER       SQL_SUCCESS     Core
  203. SQL_LOGIN_TIMEOUT           SQL_SUCCESS     Core
  204. SQL_ODBC_CURSORS            SQL_SUCCESS     Core
  205. SQL_PACKET_SIZE             SQL_SUCCESS     Core
  206. SQL_TRANSLATE_DLL           SQL_ERROR       Core
  207. SQL_TRANSLATE_OPTION        SQL_ERROR       Core
  208. SQL_TXN_ISOLATION           SQL_SUCCESS     Core
  209.  
  210. [Statement Attr]
  211. SQL_ASYNC_ENABLE            SQL_SUCCESS     Level 2
  212. SQL_BIND_TYPE               SQL_SUCCESS     Core
  213. SQL_CONCURRENCY             SQL_SUCCESS     Core
  214. SQL_CURSOR_TYPE             SQL_SUCCESS     Core
  215. SQL_KEYSET_SIZE             SQL_SUCCESS     Core
  216. SQL_MAX_LENGTH              SQL_SUCCESS     Level 1
  217. SQL_MAX_ROWS                SQL_SUCCESS     Level 2
  218. SQL_NOSCAN                  SQL_SUCCESS     Level 1
  219. SQL_QUERY_TIMEOUT           SQL_SUCCESS     Core
  220. SQL_RETRIEVE_DATA           SQL_SUCCESS     Level 2
  221. SQL_ROWSET_SIZE             SQL_SUCCESS     Level 2
  222. SQL_SIMULATE_CURSOR         SQL_SUCCESS     Level 2
  223. SQL_USE_BOOKMARKS           SQL_SUCCESS     Level 1
  224.  
  225. [SQL Conf]
  226. SQL_ALTER_TABLE             SQL_SUCCESS     Core
  227. SQL_COLUMN_ALIAS            SQL_SUCCESS     Core
  228. SQL_CONCAT_NULL_BEHAVIOR    SQL_SUCCESS     Core
  229. SQL_CORRELATION_NAME        SQL_SUCCESS     Core
  230. SQL_EXPRESSIONS_IN_ORDERBY  SQL_SUCCESS     Core
  231. SQL_GROUP_BY                SQL_SUCCESS     Core
  232. SQL_IDENTIFIER_CASE         SQL_SUCCESS     Core
  233. SQL_IDENTIFIER_QUOTE_CHAR   SQL_SUCCESS     Core
  234. SQL_KEYWORDS                SQL_SUCCESS_WITH_INFO   Core
  235. SQL_LIKE_ESCAPE_CLAUSE      SQL_SUCCESS     Level 1
  236. SQL_MAX_BINARY_LITERAL_LEN  SQL_SUCCESS     Level 1
  237. SQL_MAX_CHAR_LITERAL_LEN    SQL_SUCCESS     Level 1
  238. SQL_MAX_COLUMN_NAME_LEN     SQL_SUCCESS     Core
  239. SQL_MAX_COLUMNS_IN_GROUP_BY SQL_SUCCESS     Core
  240. SQL_MAX_COLUMNS_IN_INDEX    SQL_SUCCESS     Core
  241. SQL_MAX_COLUMNS_IN_ORDER_BY SQL_SUCCESS     Core
  242. SQL_MAX_COLUMNS_IN_SELECT   SQL_SUCCESS     Core
  243. SQL_MAX_COLUMNS_IN_TABLE    SQL_SUCCESS     Core
  244. SQL_MAX_CURSOR_NAME_LEN     SQL_SUCCESS     Core
  245. SQL_MAX_INDEX_SIZE          SQL_SUCCESS     Core
  246. SQL_MAX_OWNER_NAME_LEN      SQL_SUCCESS     Core
  247. SQL_MAX_PROCEDURE_NAME_LEN  SQL_SUCCESS     Core
  248. SQL_MAX_ROW_SIZE            SQL_SUCCESS     Core
  249. SQL_MAX_ROW_SIZE_INCLUDES_LONG  SQL_SUCCESS Core
  250. SQL_MAX_STATEMENT_LEN       SQL_SUCCESS     Core
  251. SQL_MAX_TABLE_NAME_LEN      SQL_SUCCESS     Core
  252. SQL_MAX_TABLES_IN_SELECT    SQL_SUCCESS     Core
  253. SQL_MAX_USER_NAME_LEN       SQL_SUCCESS     Core
  254. SQL_NON_NULLABLE_COLUMNS    SQL_SUCCESS     Core
  255. SQL_ODBC_SQL_CONFORMANCE    SQL_SUCCESS     Core
  256. SQL_ODBC_SQL_OPT_IEF        SQL_SUCCESS     Core
  257. SQL_ORDER_BY_COLUMNS_IN_SELECT  SQL_SUCCESS Core
  258. SQL_OUTER_JOINS             SQL_SUCCESS     Core
  259. SQL_POSITIONED_STATEMENTS   SQL_SUCCESS     Core
  260. SQL_PROCEDURES              SQL_SUCCESS     Core
  261. SQL_QUOTED_IDENTIFIER_CASE  SQL_SUCCESS     Core
  262. SQL_SPECIAL_CHARACTERS      SQL_SUCCESS     Core
  263. SQL_SUBQUERIES              SQL_SUCCESS     Core
  264. SQL_UNION                   SQL_SUCCESS     Core
  265.  
  266. ======================================================
  267. 5. MYODBC OPEN ISSUES
  268. ======================================================
  269. TO DO...!!!
  270.  
  271. ======================================================
  272. 6. APPLICATIONS WORKING WITH MYODBC
  273. ======================================================
  274. Please visit the following link, to know the common
  275. applications that works with MyODBC.
  276.  
  277. http://www.mysql.com/documentation/mysql/bychapter/manual_ODBC.html#MyODBC_clients
  278.  
  279. ======================================================
  280. 7. REPORTING PROBLEMS WITH MYODBC
  281. ======================================================
  282.  
  283. If you encounter difficulties with MyODBC, you should start by making a
  284. log file from the ODBC manager (the log you get when requesting logs from
  285. ODBCADMIN) and a MyODBC log. 
  286.  
  287. To get a MyODBC log, you need to do the following: 
  288.  
  289.    1.Ensure that you are using myodbcd.dll and not myodbc.dll. The easiest
  290.      way to do this is to get myodbcd.dll from the MyODBC distribution and
  291.      copy it over the myodbc.dll, which is probably in your 
  292.      C:\windows\system32 or C:\winnt\system32 directory. Note that you 
  293.      probably want to restore the old myodbc.dll file when you have finished
  294.      testing, as this is a lot faster than myodbcd.dll. 
  295.    2.Tag the `Trace MyODBC' option flag in the MyODBC connect/configure screen
  296.      The log will be written to file `C:\myodbc.log'. If the trace option is 
  297.      not remembered when you are going back to the above screen, it means that
  298.      you are not using the myodbcd.dll driver (see above). 
  299.    3.Start your application and try to get it to fail. 
  300.  
  301. Check the MyODBC trace file, to find out what could be wrong. You should be
  302. able to find out the issued queries by searching after the string >
  303. mysql_real_query in the `myodbc.log' file. 
  304.  
  305. You should also try duplicating the queries in the mysql monitor or admndemo
  306. to find out if the error is MyODBC or MySQL. 
  307.  
  308. If you find out something is wrong, please only send the relevant rows (max 40
  309. rows) to myodbc@lists.mysql.com. Please never send the whole MyODBC or ODBC
  310. log file! 
  311.  
  312. If you are unable to find out what's wrong, the last option is to make an 
  313. archive (tar or zip) that contains a MyODBC trace file, the ODBC log file, 
  314. and a README file that explains the problem. You can send this to 
  315. ftp://support.mysql.com/pub/mysql/secret. Only we at MySQL AB will have 
  316. access to the files you upload, and we will be very discrete with the data! 
  317.  
  318. If you can create a program that also shows this problem, please upload
  319. this too!. If the program works with some other SQL server, you should make an
  320. ODBC log file where you do exactly the same thing in the other SQL server. 
  321.  
  322. Remember that the more information you can supply to us, the more likely it
  323. is that we can fix the problem! 
  324.  
  325. Please read MyODBC mailing list archieve before posting the bug to the 
  326.